package com.wnxy.admin.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.Version;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.ibatis.annotations.Delete;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 * 订单表
 * </p>
 *
 * @author (^･ｪ･^)Cat~
 * @since 2023-11-30
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
  @TableName("t_order")
@ApiModel(value = "Order对象", description = "订单表")
public class Order implements Serializable {

    private static final long serialVersionUID = 1L;

      @TableId(value = "order_id", type = IdType.AUTO)
      @ApiModelProperty("订单号")
        private Long orderId;

      @ApiModelProperty("客户ID")
      private Integer customerId;

      @ApiModelProperty("客户名称")
      private String customerName;

      @ApiModelProperty("联系电话")
      private String customerPhone;

      @ApiModelProperty("充电电量")
      private BigDecimal chargeAmount;

      @ApiModelProperty("充电时长(单位：min)")
      private Long chargeDuration;

      @ApiModelProperty("支付方式")
      private String paymentMethod;

      @ApiModelProperty("金额(单位:元)")
      private BigDecimal amount;

      @ApiModelProperty("充电类型")
      private String chargeType;

      @ApiModelProperty("所在充电站ID")
      private Long chargingStationId;

      @ApiModelProperty("所在充电站名称")
      private String chargingStationName;

      @ApiModelProperty("充电桩编号")
      private String chargingPileNumber;

      @ApiModelProperty("充电编号")
      private String chargingId;

      @ApiModelProperty("交易状态[0:充电中 / 1: 已结束 / 3: 待支付]")
      private Integer transactionStatus;

      @ApiModelProperty("创建时间")
      @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
      private Date createTime;

      @ApiModelProperty("结束时间")
      @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
      private Date endTime;

      @Version
      @ApiModelProperty("版本控制")
      private Integer version;

      @ApiModelProperty("逻辑删除[0[正常] / 1[已删除]")
      private Integer isDeleted;
}
